package com.cowain.monitor.dao;

import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.cowain.monitor.entity.PmsSysUserEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 *  
 *  * @author 冬暖
 *  * @projectName pms-monitor
 *  * @title     PmsSysUserDao   
 *  * @package    com.cowain.monitor.dao  
 *  * @description    用户信息       
 *  * @date   2020/8/11 9:28  
 *  * @version V1.0.0
 *  
 */
@Mapper
public interface PmsSysUserDao extends BaseMapper<PmsSysUserEntity> {
    /**
     * 批量插入用户信息
     * @param list 列表
     */
    void insertUser(List<PmsSysUserEntity> list);

    /**
     * 获取用户信息
     * @param userId 用户id
     * @param username 用户名
     * @return 用户信息
     */
    PmsSysUserEntity findUserId(@Param("userId") Long userId, @Param("username") String username);

    /**
     * 批量修改
     * @param list 用户数据
     */
    void updateUser(List<PmsSysUserEntity> list);

    /**
     * 批量添加用户
     * @param user 用户信息
     */
    void insertEhrUser(List<PmsSysUserEntity> user);

    /**
     * 获取所有的用户信息
     * @param isDel 状态
     * @return 用户信息
     */
    List<PmsSysUserEntity> findUser(@Param("isDel") Long isDel);

    /**
     * 修改状态
     * @param customerEntities 用户信息
     */
    void updateUsers(List<PmsSysUserEntity> customerEntities);

    /**
     * 获取用户信息
     * @param userId 用户id
     * @param username 用户名
     * @return 用户信息
     */
    PmsSysUserEntity findUserById(@Param("userId") Long userId, @Param("username") String username);

    /**
     * 批量修改
     * @param dept 部门信息
     */
    void updateDeptById(List<PmsSysUserEntity> dept);

    /**
     * 批量删除
     * @param update 修改
     */
    void deletUser(List<PmsSysUserEntity> update);

    /**
     * 批量删除
     * @param updateUser 修改集合
     */
    void deleteUserByIds(List<PmsSysUserEntity> updateUser);

    /**
     * 获取用户id
     * @param leader 部门负责人的id
     * @return
     */
    Long findUserByHr(String leader);
}
